package com.bw.controller;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.bw.service.WlService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;
import java.util.Map;

/**
 * Description:
 *
 * @Author: hechongshan
 * @Create: 2025/8/8 20:08
 * @Version: 1.0
 */
@RestController
public class WlController {
    @Autowired
    WlService wlService;

    @RequestMapping("getJ")
    public JSONObject getJ(){
        Double j = wlService.getJ();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status",0);
        jsonObject.put("msg","");
        jsonObject.put("data",j);
        return jsonObject;
    }

    @RequestMapping("getB")
    public JSONObject getB(){
        List<Map> list = wlService.getB();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status",0);
        jsonObject.put("msg","");
        JSONArray jsonArray = new JSONArray();
        //1
        for (Map map : list) {
            JSONObject jsonObject1 = new JSONObject();
            jsonObject1.put("name",map.get("name"));
            jsonObject1.put("value",map.get("s"));
            jsonArray.add(jsonObject1);
        }
        jsonObject.put("data",jsonArray);
        return jsonObject;
    }
    @RequestMapping("getL")
    public JSONObject getL() {
        List<Map> list = wlService.getL();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status", 0);
        jsonObject.put("msg","");
        JSONObject jsonObject1 = new JSONObject();
        //1
        JSONArray jsonArray = new JSONArray();

        JSONObject jsonObject2 = new JSONObject();
        jsonObject2.put("name","机构");
        jsonObject2.put("id","start_org_name");
        jsonArray.add(jsonObject2);

        JSONObject jsonObject3 = new JSONObject();
        jsonObject3.put("name","完运里程");
        jsonObject3.put("id","s");
        jsonArray.add(jsonObject3);

        JSONObject jsonObject4 = new JSONObject();
        jsonObject4.put("name","完运次数");
        jsonObject4.put("id","c");
        jsonArray.add(jsonObject4);

        JSONObject jsonObject5 = new JSONObject();
        jsonObject5.put("name","完运时长");
        jsonObject5.put("id","sz");
        jsonArray.add(jsonObject5);

        JSONObject jsonObject6 = new JSONObject();
        jsonObject6.put("name","每次平均时长");
        jsonObject6.put("id","az");
        jsonArray.add(jsonObject6);

        JSONObject jsonObject7 = new JSONObject();
        jsonObject7.put("name","每次平均里程");
        jsonObject7.put("id","a");
        jsonArray.add(jsonObject7);

        jsonObject1.put("columns",jsonArray);
        //2
        JSONArray jsonArray1 = new JSONArray();
        for (Map map : list) {
            JSONObject jsonObject8 = new JSONObject();
            jsonObject8.put("start_org_name",map.get("start_org_name"));
            jsonObject8.put("s",map.get("s"));
            jsonObject8.put("c",map.get("c"));
            jsonObject8.put("sz",map.get("sz"));
            jsonObject8.put("az",map.get("az"));
            jsonObject8.put("a",map.get("a"));
            jsonArray1.add(jsonObject8);
        }
        jsonObject1.put("rows",jsonArray1);
        jsonObject.put("data",jsonObject1);
        return jsonObject;
    }

    @RequestMapping("getS")
    public JSONObject getS() {
        List<Map> list = wlService.getS();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status", 0);
        jsonObject.put("msg","");
        JSONObject jsonObject1 = new JSONObject();
        //1
        JSONArray jsonArray = new JSONArray();
        for (Map map : list) {
            JSONObject jsonObject2 = new JSONObject();
            jsonObject2.put("name",map.get("name"));
            jsonObject2.put("value",map.get("c"));
            JSONArray jsonArray1 = new JSONArray();
            jsonArray1.add(map.get("s"));
            jsonObject2.put("tooltipValues",jsonArray1);
            jsonArray.add(jsonObject2);
        }
        jsonObject1.put("mapData",jsonArray);
        jsonObject1.put("valueName","运单数量");
        //
        JSONArray jsonArray1 = new JSONArray();
        jsonArray1.add("运单金额");
        jsonObject1.put("tooltipNames",jsonArray1);
        JSONArray jsonArray2 = new JSONArray();
        jsonArray2.add("元");
        jsonObject1.put("tooltipUnits",jsonArray2);
        jsonObject.put("data",jsonObject1);
        return jsonObject;
    }
    @RequestMapping("getZb")
    public JSONObject getZb() {
        Map map = wlService.getZb();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status", 0);
        jsonObject.put("msg","");
        JSONArray jsonArray = new JSONArray();
        //
        for (Object object : map.keySet()) {
            JSONObject jsonObject1 = new JSONObject();
            jsonObject1.put("name",object);
            jsonObject1.put("value",map.get(object));
            jsonArray.add(jsonObject1);
        }

        jsonObject.put("data",jsonArray);
        return jsonObject;
    }
    @RequestMapping("getZ")
    public JSONObject getZ() {
        List<Map> list = wlService.getZ();
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status", 0);
        jsonObject.put("msg","");
        JSONObject jsonObject1 = new JSONObject();
        //
        JSONArray jsonArray = new JSONArray();
        for (Map map : list) {
            jsonArray.add(map.get("name"));
        }
        jsonObject1.put("categories",jsonArray);
        //
        JSONArray jsonArray1 = new JSONArray();
        JSONObject jsonObject11 = new JSONObject();
        jsonObject11.put("name","运输成功次数");
        JSONArray jsonArray2 = new JSONArray();
        for (Map map : list) {
            jsonArray2.add(map.get("c"));
        }
        jsonObject11.put("data",jsonArray2);
        jsonArray1.add(jsonObject11);
        jsonObject1.put("series",jsonArray1);
        jsonObject.put("data",jsonObject1);
        return jsonObject;
    }

}
